<?php
	session_start();  //必须处在脚本最顶端


	// 创建画板
	$image = imagecreatetruecolor(100, 30);

	// 创建颜色
	$bgcolor = imagecolorallocate($image, 255, 255, 255);

	// 颜色填充到画板
	imagefill($image, 0, 0, $bgcolor);

	$content = "";

	// 实现简单的随机数字验证码
	// 先创建内容
	// for ($i = 0; $i < 4; $i++) { 
	// 	$fontsize = 6;
	// 	$fontcolor = imagecolorallocate($image, rand(0, 120), rand(0, 120), rand(0, 120)); //深色区域
	// 	$fontcontent = rand(0,9);
	// 	$content .=  $fontcontent;

	// 	$x = ($i * 100 / 4) + rand(5, 10);
	// 	$y = rand(5, 10);

	// 	imagestring($image, $fontsize, $x, $y, $fontcontent, $fontcolor);
	// }



	//实现随机的字母加数字验证码
	for ($i = 0; $i < 4; $i ++) { 
		$fontsize = 6;
		$fontcolor = imagecolorallocate($image, rand(0, 120), rand(0, 120), rand(0, 120));
		

		$data = 'abcdefghijkmnpqrstuvwxy3456789';
		$fontcontent = substr($data, rand(0, strlen($data)), 1);

		$content .=  $fontcontent;

		$x = ($i * 100 / 4) + rand(5, 10);
		$y = rand(5, 10);


		imagestring($image, $fontsize, $x, $y, $fontcontent, $fontcolor);
	}


	$_SESSION['authcode'] = $content;


	//创建干扰元素内容 
	for ($i = 0; $i < 200; $i ++) { 
		// 创建干扰点
		$pointcolor = imagecolorallocate($image, rand(50,200), rand(50,200), rand(50,200));
		imagesetpixel($image, rand(1, 99), rand(1, 29), $pointcolor);
	}

	for ($i = 0; $i < 3; $i ++) { 
		// 创建干扰线
		$linecolor = imagecolorallocate($image, rand(80,220),  rand(80,220),  rand(80,220));
		imageline($image, rand(1,99), rand(1,29), rand(1,99), rand(1,29), $linecolor);
	}

	// echo $content;

	header("Content-type:image/png;charset =UTF8");

	imagepng($image);

	imagedestroy($image);